pay.trans.{outTradeNo}
获取指定交易
- 请求路由:
pay.trans.{outTradeNo}- 交互模型:
Request Response- 访问限制: 无
请求
RSocket.rr({
"route" : "pay.trans.{outTradeNo}"
});
请求参数
| 名称 | 类型 | 必须 | 说明 |
|---|---|---|---|
outTradeNo | String | 是 | 交易编号 |
返回
返回交易信息
{ }
返回属性
| 名称 | 类型 | 说明 |
|---|---|---|
id | String | 交易单号 |
paymentPlatform | String | 交易所属支付平台 |
prePayRequest | Object | 预支付信息 |
prePayRequest.spMchid | String | 微信支付平台的服务商标识 该标识为微信支付平台合作伙伴或者普通商户标识。仅当明确需要指定特定服务商来提供微信支付功能时,提供该参数。 未提供时,依据配置根据当前请求的客户端应用自动选取; |
prePayRequest.appId | String | 付款应用ID 由微信生成的应用ID,全局唯一。请求基础下单接口时请注意AppID的应用属性,例如公众号场景下,需使用应用属性为公众号的服务号AppID |
prePayRequest.openId | String | 付款方在应用中的openId |
prePayRequest.payerInfo | Object | 付款方的平台帐户信息 在非线上支付等场景时,需要提供该参数 |
prePayRequest.payerInfo.targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
prePayRequest.payerInfo.targetId | String | targetType下的帐户标识 |
prePayRequest.payerInfo.targetName | String | 帐户名 |
prePayRequest.outTradeNo | String | 商户系统内部订单号 只能是数字、大小写字母_-*且在同一个商户号下唯一。 |
prePayRequest.subOrders | Object[] | 子订单列表 至少1个条目。当条目多于1个时,请求合单支付 |
prePayRequest.subOrders.[].outTradeNo | String | 子订单号 仅当子订单数超过1个时,提供该参数指定子订单编号,一般使用主订单编号加数字后缀组成,例如:CCO202311281608193004-1,CCO202311281608193004-2 |
prePayRequest.subOrders.[].subMchid | String | 二级商户标识 支付给二级商户时必填。 |
prePayRequest.subOrders.[].payeeInfo | Object | 收款方的平台帐户信息 |
prePayRequest.subOrders.[].payeeInfo.targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
prePayRequest.subOrders.[].payeeInfo.targetId | String | targetType下的帐户标识 |
prePayRequest.subOrders.[].payeeInfo.targetName | String | 帐户名 |
prePayRequest.subOrders.[].description | String | 商品描述 |
prePayRequest.subOrders.[].timeExpire | String | 订单失效时间 |
prePayRequest.subOrders.[].profitShareTargets | Object[] | 指定本次订单的分账方 |
prePayRequest.subOrders.[].profitShareTargets.[].description | String | 分账的原因描述,分账账单中需要体现 最长80个字符 |
prePayRequest.subOrders.[].profitShareTargets.[].amount | Number | 分账金额 仅当本次订单的分账金额与分账方配置不一致时提供 |
prePayRequest.subOrders.[].profitShareTargets.[].manualSplit | Boolean | 是否手动分账 默认为false |
prePayRequest.subOrders.[].profitShareTargets.[].manualSplitPayType | Number | 手动分账的支付类型 0 - 平台从订单收款方收账,再转给分账接收方,到达账期分账时将产生2笔线下支付; 1 - 订单收款方直接支付给分账接收方; 2 - 订单收款方直接支付给收分账接收方,且标记为已支付; 3 - 平台直接支付给收分账接收方,例如平台垫付优惠券成本等状况; 默认为0 |
prePayRequest.subOrders.[].profitShareTargets.[].remark | String | 详细备注信息 与description不同,description用于提交到微信平台,remark用于保存详细的业务备注 |
prePayRequest.subOrders.[].profitShareTargets.[].accountingDate | String | 记账时间 用作与第三方对账时,与其会计期间匹配。 |
prePayRequest.subOrders.[].profitShareTargets.[].targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
prePayRequest.subOrders.[].profitShareTargets.[].targetId | String | targetType下的帐户标识 |
prePayRequest.subOrders.[].profitShareTargets.[].targetName | String | 帐户名 |
prePayRequest.subOrders.[].goodsTag | String | 订单优惠标记 |
prePayRequest.subOrders.[].amount | Object | 支付金额信息 |
prePayRequest.subOrders.[].amount.total | Number | 支付金额,单位为分 |
prePayRequest.subOrders.[].amount.currency | String | 标价币种,符合ISO 4217标准的三位字母代码 CNY:人民币,境内商户号仅支持人民币 |
prePayRequest.subOrders.[].detail | Object | 优惠功能 |
prePayRequest.subOrders.[].detail.costPrice | Number | 订单原价 1、商户侧一张小票订单可能被分多次支付,订单原价用于记录整张小票的交易金额。 2、当订单原价与支付金额不相等,则不享受优惠。 3、该字段主要用于防止同一张小票分多次支付,以享受多次优惠的情况,正常支付订单不必上传此参数。 |
prePayRequest.subOrders.[].detail.invoiceId | String | 商家小票ID |
prePayRequest.subOrders.[].detail.goodsDetail | Object[] | 单品列表信息 条目个数限制:【1,6000】 |
prePayRequest.subOrders.[].detail.goodsDetail.[].merchantGoodsId | String | 商户侧商品编码 由半角的大小写字母、数字、中划线、下划线中的一种或几种组成。 |
prePayRequest.subOrders.[].detail.goodsDetail.[].wechatpayGoodsId | String | 微信支付商品编码 微信支付定义的统一商品编号(没有可不传) |
prePayRequest.subOrders.[].detail.goodsDetail.[].goodsName | String | 商品的实际名称 |
prePayRequest.subOrders.[].detail.goodsDetail.[].quantity | Number | 用户购买的数量 |
prePayRequest.subOrders.[].detail.goodsDetail.[].unitPrice | Number | 商品单价 单位为:分。如果商户有优惠,需传输商户优惠后的单价(例如:用户对一笔100元的订单使用了商场发的纸质优惠券100-50,则活动商品的单价应为原单价-50) |
prePayRequest.subOrders.[].discounts | Object[] | 订单使用的折扣信息 |
prePayRequest.subOrders.[].discounts.[].id | String | 折扣标识,如优惠券id |
prePayRequest.subOrders.[].discounts.[].type | String | 折扣类型,例如"coupon" |
prePayRequest.subOrders.[].discounts.[].name | String | 折扣名称,如折扣券名称 |
prePayRequest.subOrders.[].discounts.[].amount | Number | 折扣金额,单位:分 |
prePayRequest.subOrders.[].discounts.[].cost | Number | 折扣券购买价格,单位:分 |
prePayRequest.subOrders.[].discounts.[].refund | Number | 该折扣项涉及的退款金额,单位:分 |
prePayRequest.subOrders.[].discounts.[].payer | Object | 折扣出资方 |
prePayRequest.subOrders.[].discounts.[].payer.targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
prePayRequest.subOrders.[].discounts.[].payer.targetId | String | targetType下的帐户标识 |
prePayRequest.subOrders.[].discounts.[].payer.targetName | String | 帐户名 |
prePayRequest.subOrders.[].discounts.[].extra | Object | 其他扩展属性 |
prePayRequest.subOrders.[].extra | Object | 扩展信息,下游应用可以传递关联业务数据以便据此进行汇总统计 |
prePayRequest.contextData | Object | 支付订单上下文信息,这些信息会在支付回调中被传递 |
prePayRequest.supportFapiao | Boolean | 电子发票入口开放标识 传入true时,支付成功消息和支付详情页将出现开票入口。 需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效。 |
prePayRequest.prepayId | String | 针对同一个订单重复支付时,提交之前返回的prepayId |
prePayRequest.sceneInfo | Object | 支付场景描述 |
prePayRequest.sceneInfo.payerClientIp | String | 用户的客户端IP 支持IPv4和IPv6两种格式的IP地址。 |
prePayRequest.sceneInfo.deviceId | String | 商户端设备号(门店号或收银设备ID) |
prePayRequest.sceneInfo.storeInfo | Object | 商户门店信息 |
prePayRequest.sceneInfo.storeInfo.id | String | 商户侧门店编号 |
prePayRequest.sceneInfo.storeInfo.name | String | 商户侧门店名称 |
prePayRequest.sceneInfo.storeInfo.areaCode | String | 地区编码,详细请见省市区编号对照表。 |
prePayRequest.sceneInfo.storeInfo.address | String | 详细的商户门店地址 |
prePayRequest.isCredit | Boolean | 是否记账(月结)账户 |
payResult | Object | 支付结果 |
payResult.spAppid | String | 服务商公众号ID 服务商申请的公众号或移动应用AppID |
payResult.spMchid | String | 服务商户号 |
payResult.outTradeNo | String | 商户订单号 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一。 特殊规则:最小字符长度为6 |
payResult.sceneInfo | Object | 场景信息 |
payResult.sceneInfo.deviceId | String | 商户端设备号 |
payResult.payer | Object | 支付者 |
payResult.payer.subOpenid | String | 用户标识 用户在商户sub_appid下的唯一标识。 |
payResult.payer.spOpenid | String | 用户子识 用户在商户sp_appid下的唯一标识。 |
payResult.payer.openid | String | 支付者用户标识 |
payResult.payer.username | String | 支付者用户名 平台用户的帐号。非平台用户时为空 |
payResult.payer.fullname | String | 支付者名称 平台用户的名称。非平台用户时为空 |
payResult.subOrders | Object[] | |
payResult.subOrders.[].outTradeNo | String | 子订单编号 |
payResult.subOrders.[].attach | String | 附加数据 |
payResult.subOrders.[].transactionId | String | 微信支付订单号 |
payResult.subOrders.[].subAppid | String | 子商户公众号ID |
payResult.subOrders.[].subMchid | String | 子商户号 |
payResult.subOrders.[].subMchName | String | 子商户名称 |
payResult.subOrders.[].payeeInfo | Object | 收款方的平台帐户信息 |
payResult.subOrders.[].payeeInfo.targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
payResult.subOrders.[].payeeInfo.targetId | String | targetType下的帐户标识 |
payResult.subOrders.[].payeeInfo.targetName | String | 帐户名 |
payResult.subOrders.[].discounts | Object[] | 订单使用的折扣信息 |
payResult.subOrders.[].discounts.[].id | String | 折扣标识,如优惠券id |
payResult.subOrders.[].discounts.[].type | String | 折扣类型,例如"coupon" |
payResult.subOrders.[].discounts.[].name | String | 折扣名称,如折扣券名称 |
payResult.subOrders.[].discounts.[].amount | Number | 折扣金额,单位:分 |
payResult.subOrders.[].discounts.[].cost | Number | 折扣券购买价格,单位:分 |
payResult.subOrders.[].discounts.[].refund | Number | 该折扣项涉及的退款金额,单位:分 |
payResult.subOrders.[].discounts.[].payer | Object | 折扣出资方 |
payResult.subOrders.[].discounts.[].payer.targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
payResult.subOrders.[].discounts.[].payer.targetId | String | targetType下的帐户标识 |
payResult.subOrders.[].discounts.[].payer.targetName | String | 帐户名 |
payResult.subOrders.[].discounts.[].extra | Object | 其他扩展属性 |
payResult.subOrders.[].tradeType | String | 交易类型 * JSAPI:公众号支付 * NATIVE:扫码支付 * APP:APP支付 * MICROPAY:付款码支付 * MWEB:H5支付 * FACEPAY:刷脸支付 |
payResult.subOrders.[].tradeState | String | 交易 状态 * SUCCESS:支付成功 * REFUND:转入退款 * NOTPAY:未支付 * CLOSED:已关闭 * REVOKED:已撤销(仅付款码支付会返回) * USERPAYING:用户支付中(仅付款码支付会返回) * PAYERROR:支付失败(仅付款码支付会返回) |
payResult.subOrders.[].tradeStateDesc | String | 交易状态描述 |
payResult.subOrders.[].bankType | String | 银行类型 采用字符串类型的银行标识。 银行标识请参考《银行类型对照表》 |
payResult.subOrders.[].successTime | String | 支付完成时间 |
payResult.subOrders.[].amount | Object | 订单金额信息 当支付成功时返回该字段。 |
payResult.subOrders.[].amount.total | Number | 总金额 订单总金额,单位为分 |
payResult.subOrders.[].amount.payerTotal | Number | 用户支付金额 单位为分。(指使用优惠券的情况下,这里等于总金额-优惠券金额) |
payResult.subOrders.[].amount.currency | String | 货币类型 CNY:人民币,境内商户号仅支持人民币。 |
payResult.subOrders.[].amount.payerCurrency | String | 用户支付币种 |
payResult.subOrders.[].promotionDetail | Object[] | 优惠功能 |
payResult.subOrders.[].promotionDetail.[].couponId | String | 券ID |
payResult.subOrders.[].promotionDetail.[].name | String | 优惠名称 |
payResult.subOrders.[].promotionDetail.[].scope | String | 优惠范围 * GLOBAL:全场代金券 * SINGLE:单品优惠 |
payResult.subOrders.[].promotionDetail.[].type | String | 优惠类型 * CASH:充值型代金券 * NOCASH:免充值型代金券 |
payResult.subOrders.[].promotionDetail.[].amount | Number | 优惠券面额 |
payResult.subOrders.[].promotionDetail.[].stockId | String | 活动ID,批次ID |
payResult.subOrders.[].promotionDetail.[].wechatpayContribute | Number | 微信出资 单位为分 |
payResult.subOrders.[].promotionDetail.[].merchantContribute | Number | 商户出资 单位为分 |
payResult.subOrders.[].promotionDetail.[].otherContribute | Number | 其他出资 单位为分 |
payResult.subOrders.[].promotionDetail.[].currency | String | 优惠币种 CNY:人民币,境内商户号仅支持人民币。 |
payResult.subOrders.[].promotionDetail.[].goodsDetail | Object[] | 单品列表 |
payResult.subOrders.[].promotionDetail.[].goodsDetail.[].merchantGoodsId | String | 商户侧商品编码 由半角的大小写字母、数字、中划线、下划线中的一种或几种组成。 |
payResult.subOrders.[].promotionDetail.[].goodsDetail.[].wechatpayGoodsId | String | 微信支付商品编码 微信支付定义的统一商品编号(没有可不传) |
payResult.subOrders.[].promotionDetail.[].goodsDetail.[].goodsName | String | 商品的实际名称 |
payResult.subOrders.[].promotionDetail.[].goodsDetail.[].quantity | Number | 用户购买的数量 |
payResult.subOrders.[].promotionDetail.[].goodsDetail.[].unitPrice | Number | 商品单价 单位为:分。如果商户有优惠,需传输商户优 惠后的单价(例如:用户对一笔100元的订单使用了商场发的纸质优惠券100-50,则活动商品的单价应为原单价-50) |
payResult.subOrders.[].transReceivers | Object[] | |
payResult.subOrders.[].transReceivers.[].description | String | 分账的原因描述,分账账单中需要体现 最长80个字符 |
payResult.subOrders.[].transReceivers.[].amount | Number | 分账金额 仅当本次订单的分账金额与分账方配置不一致时提供 |
payResult.subOrders.[].transReceivers.[].manualSplit | Boolean | 是否手动分账 默认为false |
payResult.subOrders.[].transReceivers.[].manualSplitPayType | Number | 手动分账的支付类型 0 - 平台从订单收款方收账,再转给分账接收方,到达账期分账时将产生2笔线下支付; 1 - 订单收款方直接支付给分账接收方; 2 - 订单收款方直接支付给收分账接收方,且标记为已支付; 3 - 平台直接支付给收分账接收方,例如平台垫付优惠券成本等状况; 默认为0 |
payResult.subOrders.[].transReceivers.[].remark | String | 详细备注信息 与description不同,description用于提交到微信平台,remark用于保存详细的业务备注 |
payResult.subOrders.[].transReceivers.[].accountPeriod | Number | 账期 |
payResult.subOrders.[].transReceivers.[].finishTime | String | 分账完成时间 |
payResult.subOrders.[].transReceivers.[].result | String | 分账结果 * PENDING:待分账 * SUCCESS:分账成功 * CLOSED:已关闭 |
payResult.subOrders.[].transReceivers.[].outOrderNo | String | 分账单号 |
payResult.subOrders.[].transReceivers.[].errMsg | String | 分账异常消息 |
payResult.subOrders.[].transReceivers.[].accountingDate | String | 记账时间 用作与第三方对账时,与其会计期间匹配。 |
payResult.subOrders.[].transReceivers.[].targetType | String | 帐户类型 由调用方根据分账方身份类型定义,例如:COMPANY,PARTNER,CHANNEL等 |
payResult.subOrders.[].transReceivers.[].targetId | String | targetType下的帐户标识 |
payResult.subOrders.[].transReceivers.[].targetName | String | 帐户名 |
payResult.subOrders.[].psInfo | Object | |
payResult.subOrders.[].psInfo.split | Boolean | 分账完成 |
payResult.subOrders.[].psInfo.finished | Boolean | 是否已经完成分账和解冻 |
payResult.subOrders.[].psInfo.finishTime | String | 解冻完成时间 |
payResult.subOrders.[].psInfo.unfreezeNo | String | 解冻的分账单号 |
payResult.subOrders.[].psInfo.unfreezeStatus | String | 解冻状态 |
payResult.subOrders.[].psInfo.unfreezeTime | String | 解冻时间 |
payResult.subOrders.[].psInfo.unfreezeErrMsg | String | 解冻请求失败时的错误信息 |
payResult.subOrders.[].psInfo.profitShareAmount | Number | 线上分账总金额 |
payResult.subOrders.[].psInfo.manualAmount | Number | 线下分账总金额 |
payResult.subOrders.[].psInfo.unfreezeAmount | Number | 实际线上解冻金额 |
payResult.subOrders.[].psInfo.splitAmount | Number | 已分账金额 单位为:分 |
payResult.subOrders.[].psInfo.unfrozenAmount | Number | 最终解冻金额 分账完结前,该值为0;分账完结后返回unfreezeAmount |
payResult.subOrders.[].psInfo.amount | Number | 分账金额 |
payResult.subOrders.[].orderAmount | Number | 订单原始金额 使用优惠时,为优惠前的订单原始总价 |
status | Number | 支付状态:0 - 未支付; 1 - 已支付; 2 - 支付失败/过期; |
canSplit | Boolean | 是否可以进行分账 业务订单完成后设置为true以开启分账 |
splitEnabledTime | String | 分账开启时间 |
extraProps | Object | 扩展属性 |
tenantId | String | 租户ID |
amount | Number | 订单总金额 |